#pragma once

#include <iostream>
#include <cstdlib>
#include <cassert>

// history table, to find previously investigated positions
typedef int I_TABLE_HISTORY[I_BOARD_TRUE][I_BOARD_TRUE];

// entry for the transposition table
typedef struct
{
	int etype, eval, depth, stamp;
	ZRANDOM lock;
}
I_TABLE_TRANS_ENTRY;

// to store in the transposition table
enum EVALTYPE
{
	NULL_ENTRY          = -1,
	EVALTYPE_ACCURATE   =  0,
};

// transposition table, to retrieve data on investigated positions
int const I_TABLE_TRANS_SIZE = 1 << 10;
typedef I_TABLE_TRANS_ENTRY I_TABLE_TRANSPOSITION[I_TABLE_TRANS_SIZE];
